﻿// #include <benchmark/benchmark.h>

// #include <learn/math/graph.h>

// using namespace xi;
// using namespace xi::math;

// namespace
// {

// void bench_dfs(benchmark::State &state)
// {
//     Graph_Sparse g(6);
//     std::vector<std::size_t> vs(g.size());
//     std::iota(vs.begin(), vs.end(), 0);

//     g.create_undirected_edges(vs[0], {vs[1], vs[2], vs[3]}, {1, 1, 1});
//     g.create_undirected_edges(vs[1], {vs[2]}, {1});
//     g.create_undirected_edges(vs[2], {vs[3]}, {1});
//     g.create_undirected_edges(vs[3], {vs[4]}, {1});
//     g.create_undirected_edges(vs[4], {vs[5]}, {1});

//     for (auto _ : state)
//         g.dfs(vs[2]);
// }
// BENCHMARK(bench_dfs);

// } // namespace
